@@ -1998,20 +1998,28 @@ Suppressing An Element's Contents Entirely: the 'content-visibility' property {#
1998
1998
All elements have a <dfn>currently relevant to the user</dfn> flag, initially false.
1999
1999
</div>
2000
2000
2001
+ <div algorithm="update currently relevant to the user">
2002
+ To <dfn>update currently relevant to the user</dfn> given an element <var> element</var> :
2003
+
2004
+ 1. Let <var> currentlyRelevant</var> be true if <var> element</var> is [=relevant to the user=] , otherwise false.
2005
+ 1. If <var> element</var> 's [=currently relevant to the user=] flag is equal to <var> currentlyRelevant</var> , then return false.
2006
+ 1. Set <var> element</var> 's [=currently relevant to the user=] flag to <var> currentlyRelevant</var> .
2007
+ 1. return true.
2008
+ </div>
2009
+
2001
2010
<div algorithm="update content relevancy for a document">
2002
2011
To <dfn export>update content relevancy for a document</dfn> given a document <var> doc</var> , and a boolean <var> updateNonInitial</var> :
2003
2012
2004
2013
1. Let <var> changed</var> be false.
2005
- 1. For each <var> element</var> [=connected=] to doc with ''auto'' used value of ''content-visibility''
2014
+ 1. For each <var> element</var> [=connected=] to doc with ''auto'' used value of ''content-visibility'' :
2015
+ 1. If <var> updateNonInitial</var> is true:
2016
+ 1. If [=update currently relevant to the user=] for <var> element</var> returns true.
2017
+ 1. Set <var> changed</var> to true.
2006
2018
1. Let <var> isInitialDetermination</var> be true if <var> element</var> 's [=proximity to the viewport=] is [=not determined=] , otherwise false.
2007
2019
1. Determine [=proximity to the viewport=] for <var> element</var> .
2008
- 1. If <var> updateNonInitial</var> is false and <var> isInitialDetermination</var> is false, then [=continue=] .
2009
- 1. If <var> element</var> is [=relevant to the user=] , then:
2010
- 1. If <var> element</var> 's [=currently relevant to the user=] flag is false, set <var> changed</var> to true.
2011
- 1. Set <var> element</var> 's [=currently relevant to the user=] flag to true.
2012
- 1. Otherwise:
2013
- 1. If <var> element</var> 's [=currently relevant to the user=] flag is true, set <var> changed</var> to true.
2014
- 1. Set <var> element</var> 's [=currently relevant to the user=] flag to false.
2020
+ 1. If <var> isInitialDetermination</var> is false, then [=continue=] .
2021
+ 1. If [=update currently relevant to the user=] for <var> element</var> returns true.
2022
+ 1. Set <var> changed</var> to true.
2015
2023
1. return <var> changed</var> .
2016
2024
2017
2025
<div class=note>
0 commit comments